home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.2 Development Libraries / SGI IRIX 6.2 Development Libraries.iso / dist / complib.idb / usr / share / catman / p_man / cat3 / complib / ssbgst.z / ssbgst
Text File  |  1996-03-14  |  4KB  |  133 lines

  1.  
  2.  
  3.  
  4. SSSSSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))                                                          SSSSSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      SSBGST - reduce a real symmetric-definite banded generalized eigenproblem
  10.      A*x = lambda*B*x to standard form C*y = lambda*y,
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE SSBGST( VECT, UPLO, N, KA, KB, AB, LDAB, BB, LDBB, X, LDX,
  14.                         WORK, INFO )
  15.  
  16.          CHARACTER      UPLO, VECT
  17.  
  18.          INTEGER        INFO, KA, KB, LDAB, LDBB, LDX, N
  19.  
  20.          REAL           AB( LDAB, * ), BB( LDBB, * ), WORK( * ), X( LDX, * )
  21.  
  22. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  23.      SSBGST reduces a real symmetric-definite banded generalized eigenproblem
  24.      A*x = lambda*B*x  to standard form  C*y = lambda*y, such that C has the
  25.      same bandwidth as A.
  26.  
  27.      B must have been previously factorized as S**T*S by SPBSTF, using a split
  28.      Cholesky factorization. A is overwritten by C = X**T*A*X, where X =
  29.      S**(-1)*Q and Q is an orthogonal matrix chosen to preserve the bandwidth
  30.      of A.
  31.  
  32.  
  33. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  34.      VECT    (input) CHARACTER*1
  35.              = 'N':  do not form the transformation matrix X;
  36.              = 'V':  form X.
  37.  
  38.      UPLO    (input) CHARACTER*1
  39.              = 'U':  Upper triangle of A is stored;
  40.              = 'L':  Lower triangle of A is stored.
  41.  
  42.      N       (input) INTEGER
  43.              The order of the matrices A and B.  N >= 0.
  44.  
  45.      KA      (input) INTEGER
  46.              The number of superdiagonals of the matrix A if UPLO = 'U', or
  47.              the number of subdiagonals if UPLO = 'L'.  KA >= 0.
  48.  
  49.      KB      (input) INTEGER
  50.              The number of superdiagonals of the matrix B if UPLO = 'U', or
  51.              the number of subdiagonals if UPLO = 'L'.  KA >= KB >= 0.
  52.  
  53.      AB      (input/output) REAL array, dimension (LDAB,N)
  54.              On entry, the upper or lower triangle of the symmetric band
  55.              matrix A, stored in the first ka+1 rows of the array.  The j-th
  56.              column of A is stored in the j-th column of the array AB as
  57.              follows:  if UPLO = 'U', AB(ka+1+i-j,j) = A(i,j) for max(1,j-
  58.              ka)<=i<=j; if UPLO = 'L', AB(1+i-j,j)    = A(i,j) for
  59.              j<=i<=min(n,j+ka).
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))                                                          SSSSSSSSBBBBGGGGSSSSTTTT((((3333FFFF))))
  71.  
  72.  
  73.  
  74.              On exit, the transformed matrix X**T*A*X, stored in the same
  75.              format as A.
  76.  
  77.      LDAB    (input) INTEGER
  78.              The leading dimension of the array AB.  LDAB >= KA+1.
  79.  
  80.      BB      (input) REAL array, dimension (LDBB,N)
  81.              The banded factor S from the split Cholesky factorization of B,
  82.              as returned by SPBSTF, stored in the first KB+1 rows of the
  83.              array.
  84.  
  85.      LDBB    (input) INTEGER
  86.              The leading dimension of the array BB.  LDBB >= KB+1.
  87.  
  88.      X       (output) REAL array, dimension (LDX,N)
  89.              If VECT = 'V', the n-by-n matrix X.  If VECT = 'N', the array X
  90.              is not referenced.
  91.  
  92.      LDX     (input) INTEGER
  93.              The leading dimension of the array X.  LDX >= max(1,N) if VECT =
  94.              'V'; LDX >= 1 otherwise.
  95.  
  96.      WORK    (workspace) REAL array, dimension (2*N)
  97.  
  98.      INFO    (output) INTEGER
  99.              = 0:  successful exit
  100.              < 0:  if INFO = -i, the i-th argument had an illegal value.
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.